//-------------------------------------------------------------------------------------------------------
// Copyright (C) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
//-------------------------------------------------------------------------------------------------------

function write(v) { WScript.Echo(v + ""); }

function foo() {}

write(+0.0 === '');
write(+0.0 === 0xa);
write(+0.0 === 04);
write(+0.0 === 'hello');
write(+0.0 === 'hel' + 'lo');
write(+0.0 === String(''));
write(+0.0 === String('hello'));
write(+0.0 === String('h' + 'ello'));
write(+0.0 === new String(''));
write(+0.0 === new String('hello'));
write(+0.0 === new String('he' + 'llo'));
write(+0.0 === new Object());
write(+0.0 === new Object());
write(+0.0 === [1, 2, 3]);
write(+0.0 === [1 ,2 , 3]);
write(+0.0 === new Array(3));
write(+0.0 === Array(3));
write(+0.0 === new Array(1 ,2 ,3));
write(+0.0 === Array(1));
write(+0.0 === foo);
write(1 === undefined);
write(1 === null);
write(1 === true);
write(1 === false);
write(1 === Boolean(true));
write(1 === Boolean(false));
write(1 === new Boolean(true));
write(1 === new Boolean(false));
write(1 === NaN);
write(1 === +0);
write(1 === -0);
write(1 === 0);
write(1 === 0.0);
write(1 === -0.0);
write(1 === +0.0);
write(1 === 1);
write(1 === 10);
write(1 === 10.0);
write(1 === 10.1);
write(1 === -1);
write(1 === -10);
write(1 === -10.0);
write(1 === -10.1);
write(1 === Number.MAX_VALUE);
write(1 === Number.MIN_VALUE);
write(1 === Number.NaN);
write(1 === Number.POSITIVE_INFINITY);
write(1 === Number.NEGATIVE_INFINITY);
write(1 === new Number(NaN));
write(1 === new Number(+0));
write(1 === new Number(-0));
write(1 === new Number(0));
write(1 === new Number(0.0));
write(1 === new Number(-0.0));
write(1 === new Number(+0.0));
write(1 === new Number(1));
write(1 === new Number(10));
write(1 === new Number(10.0));
write(1 === new Number(10.1));
write(1 === new Number(-1));
write(1 === new Number(-10));
write(1 === new Number(-10.0));
write(1 === new Number(-10.1));
write(1 === new Number(Number.MAX_VALUE));
write(1 === new Number(Number.MIN_VALUE));
write(1 === new Number(Number.NaN));
write(1 === new Number(Number.POSITIVE_INFINITY));
write(1 === new Number(Number.NEGATIVE_INFINITY));
write(1 === '');
write(1 === 0xa);
write(1 === 04);
write(1 === 'hello');
write(1 === 'hel' + 'lo');
write(1 === String(''));
write(1 === String('hello'));
write(1 === String('h' + 'ello'));
write(1 === new String(''));
write(1 === new String('hello'));
write(1 === new String('he' + 'llo'));
write(1 === new Object());
write(1 === new Object());
write(1 === [1, 2, 3]);
write(1 === [1 ,2 , 3]);
write(1 === new Array(3));
write(1 === Array(3));
write(1 === new Array(1 ,2 ,3));
write(1 === Array(1));
write(1 === foo);
write(10 === undefined);
write(10 === null);
write(10 === true);
write(10 === false);
write(10 === Boolean(true));
write(10 === Boolean(false));
write(10 === new Boolean(true));
write(10 === new Boolean(false));
write(10 === NaN);
write(10 === +0);
write(10 === -0);
write(10 === 0);
write(10 === 0.0);
write(10 === -0.0);
write(10 === +0.0);
write(10 === 1);
write(10 === 10);
write(10 === 10.0);
write(10 === 10.1);
write(10 === -1);
write(10 === -10);
write(10 === -10.0);
write(10 === -10.1);
write(10 === Number.MAX_VALUE);
write(10 === Number.MIN_VALUE);
write(10 === Number.NaN);
write(10 === Number.POSITIVE_INFINITY);
write(10 === Number.NEGATIVE_INFINITY);
write(10 === new Number(NaN));
write(10 === new Number(+0));
write(10 === new Number(-0));
write(10 === new Number(0));
write(10 === new Number(0.0));
write(10 === new Number(-0.0));
write(10 === new Number(+0.0));
write(10 === new Number(1));
write(10 === new Number(10));
write(10 === new Number(10.0));
write(10 === new Number(10.1));
write(10 === new Number(-1));
write(10 === new Number(-10));
write(10 === new Number(-10.0));
write(10 === new Number(-10.1));
write(10 === new Number(Number.MAX_VALUE));
write(10 === new Number(Number.MIN_VALUE));
write(10 === new Number(Number.NaN));
write(10 === new Number(Number.POSITIVE_INFINITY));
write(10 === new Number(Number.NEGATIVE_INFINITY));
write(10 === '');
write(10 === 0xa);
write(10 === 04);
write(10 === 'hello');
write(10 === 'hel' + 'lo');
write(10 === String(''));
write(10 === String('hello'));
write(10 === String('h' + 'ello'));
write(10 === new String(''));
write(10 === new String('hello'));
write(10 === new String('he' + 'llo'));
write(10 === new Object());
write(10 === new Object());
write(10 === [1, 2, 3]);
write(10 === [1 ,2 , 3]);
write(10 === new Array(3));
write(10 === Array(3));
write(10 === new Array(1 ,2 ,3));
write(10 === Array(1));
write(10 === foo);
write(10.0 === undefined);
write(10.0 === null);
write(10.0 === true);
write(10.0 === false);
write(10.0 === Boolean(true));
write(10.0 === Boolean(false));
write(10.0 === new Boolean(true));
write(10.0 === new Boolean(false));
write(10.0 === NaN);
write(10.0 === +0);
write(10.0 === -0);
write(10.0 === 0);
write(10.0 === 0.0);
write(10.0 === -0.0);
write(10.0 === +0.0);
write(10.0 === 1);
write(10.0 === 10);
write(10.0 === 10.0);
write(10.0 === 10.1);
write(10.0 === -1);
write(10.0 === -10);
write(10.0 === -10.0);
write(10.0 === -10.1);
write(10.0 === Number.MAX_VALUE);
write(10.0 === Number.MIN_VALUE);
write(10.0 === Number.NaN);
write(10.0 === Number.POSITIVE_INFINITY);
write(10.0 === Number.NEGATIVE_INFINITY);
write(10.0 === new Number(NaN));
write(10.0 === new Number(+0));
write(10.0 === new Number(-0));
write(10.0 === new Number(0));
write(10.0 === new Number(0.0));
write(10.0 === new Number(-0.0));
write(10.0 === new Number(+0.0));
write(10.0 === new Number(1));
write(10.0 === new Number(10));
write(10.0 === new Number(10.0));
write(10.0 === new Number(10.1));
write(10.0 === new Number(-1));
write(10.0 === new Number(-10));
write(10.0 === new Number(-10.0));
write(10.0 === new Number(-10.1));
write(10.0 === new Number(Number.MAX_VALUE));
write(10.0 === new Number(Number.MIN_VALUE));
write(10.0 === new Number(Number.NaN));
write(10.0 === new Number(Number.POSITIVE_INFINITY));
write(10.0 === new Number(Number.NEGATIVE_INFINITY));
write(10.0 === '');
write(10.0 === 0xa);
write(10.0 === 04);
write(10.0 === 'hello');
write(10.0 === 'hel' + 'lo');
write(10.0 === String(''));
write(10.0 === String('hello'));
write(10.0 === String('h' + 'ello'));
write(10.0 === new String(''));
write(10.0 === new String('hello'));
write(10.0 === new String('he' + 'llo'));
write(10.0 === new Object());
write(10.0 === new Object());
write(10.0 === [1, 2, 3]);
write(10.0 === [1 ,2 , 3]);
write(10.0 === new Array(3));
write(10.0 === Array(3));
write(10.0 === new Array(1 ,2 ,3));
write(10.0 === Array(1));
write(10.0 === foo);
write(10.1 === undefined);
write(10.1 === null);
write(10.1 === true);
write(10.1 === false);
write(10.1 === Boolean(true));
write(10.1 === Boolean(false));
write(10.1 === new Boolean(true));
write(10.1 === new Boolean(false));
write(10.1 === NaN);
write(10.1 === +0);
write(10.1 === -0);
write(10.1 === 0);
write(10.1 === 0.0);
write(10.1 === -0.0);
write(10.1 === +0.0);
write(10.1 === 1);
write(10.1 === 10);
write(10.1 === 10.0);
write(10.1 === 10.1);
write(10.1 === -1);
write(10.1 === -10);
write(10.1 === -10.0);
write(10.1 === -10.1);
write(10.1 === Number.MAX_VALUE);
write(10.1 === Number.MIN_VALUE);
write(10.1 === Number.NaN);
write(10.1 === Number.POSITIVE_INFINITY);
write(10.1 === Number.NEGATIVE_INFINITY);
write(10.1 === new Number(NaN));
write(10.1 === new Number(+0));
write(10.1 === new Number(-0));
write(10.1 === new Number(0));
write(10.1 === new Number(0.0));
write(10.1 === new Number(-0.0));
write(10.1 === new Number(+0.0));
write(10.1 === new Number(1));
write(10.1 === new Number(10));
write(10.1 === new Number(10.0));
write(10.1 === new Number(10.1));
write(10.1 === new Number(-1));
write(10.1 === new Number(-10));
write(10.1 === new Number(-10.0));
write(10.1 === new Number(-10.1));
write(10.1 === new Number(Number.MAX_VALUE));
write(10.1 === new Number(Number.MIN_VALUE));
write(10.1 === new Number(Number.NaN));
write(10.1 === new Number(Number.POSITIVE_INFINITY));
write(10.1 === new Number(Number.NEGATIVE_INFINITY));
write(10.1 === '');
write(10.1 === 0xa);
write(10.1 === 04);
write(10.1 === 'hello');
write(10.1 === 'hel' + 'lo');
write(10.1 === String(''));
write(10.1 === String('hello'));
write(10.1 === String('h' + 'ello'));
write(10.1 === new String(''));
write(10.1 === new String('hello'));
write(10.1 === new String('he' + 'llo'));
write(10.1 === new Object());
write(10.1 === new Object());
write(10.1 === [1, 2, 3]);
write(10.1 === [1 ,2 , 3]);
write(10.1 === new Array(3));
write(10.1 === Array(3));
write(10.1 === new Array(1 ,2 ,3));
write(10.1 === Array(1));
write(10.1 === foo);
write(-1 === undefined);
write(-1 === null);
write(-1 === true);
write(-1 === false);
write(-1 === Boolean(true));
write(-1 === Boolean(false));
write(-1 === new Boolean(true));
write(-1 === new Boolean(false));
write(-1 === NaN);
write(-1 === +0);
write(-1 === -0);
write(-1 === 0);
write(-1 === 0.0);
write(-1 === -0.0);
write(-1 === +0.0);
write(-1 === 1);
write(-1 === 10);
write(-1 === 10.0);
write(-1 === 10.1);
write(-1 === -1);
write(-1 === -10);
write(-1 === -10.0);
write(-1 === -10.1);
write(-1 === Number.MAX_VALUE);
write(-1 === Number.MIN_VALUE);
write(-1 === Number.NaN);
write(-1 === Number.POSITIVE_INFINITY);
write(-1 === Number.NEGATIVE_INFINITY);
write(-1 === new Number(NaN));
write(-1 === new Number(+0));
write(-1 === new Number(-0));
write(-1 === new Number(0));
write(-1 === new Number(0.0));
write(-1 === new Number(-0.0));
write(-1 === new Number(+0.0));
write(-1 === new Number(1));
write(-1 === new Number(10));
write(-1 === new Number(10.0));
write(-1 === new Number(10.1));
write(-1 === new Number(-1));
write(-1 === new Number(-10));
write(-1 === new Number(-10.0));
write(-1 === new Number(-10.1));
write(-1 === new Number(Number.MAX_VALUE));
write(-1 === new Number(Number.MIN_VALUE));
write(-1 === new Number(Number.NaN));
write(-1 === new Number(Number.POSITIVE_INFINITY));
write(-1 === new Number(Number.NEGATIVE_INFINITY));
write(-1 === '');
write(-1 === 0xa);
write(-1 === 04);
write(-1 === 'hello');
write(-1 === 'hel' + 'lo');
write(-1 === String(''));
write(-1 === String('hello'));
write(-1 === String('h' + 'ello'));
write(-1 === new String(''));
write(-1 === new String('hello'));
write(-1 === new String('he' + 'llo'));
write(-1 === new Object());
write(-1 === new Object());
write(-1 === [1, 2, 3]);
write(-1 === [1 ,2 , 3]);
write(-1 === new Array(3));
write(-1 === Array(3));
write(-1 === new Array(1 ,2 ,3));
write(-1 === Array(1));
write(-1 === foo);
write(-10 === undefined);
write(-10 === null);
write(-10 === true);
write(-10 === false);
write(-10 === Boolean(true));
write(-10 === Boolean(false));
write(-10 === new Boolean(true));
write(-10 === new Boolean(false));
write(-10 === NaN);
write(-10 === +0);
write(-10 === -0);
write(-10 === 0);
write(-10 === 0.0);
write(-10 === -0.0);
write(-10 === +0.0);
write(-10 === 1);
write(-10 === 10);
write(-10 === 10.0);
write(-10 === 10.1);
write(-10 === -1);
write(-10 === -10);
write(-10 === -10.0);
write(-10 === -10.1);
write(-10 === Number.MAX_VALUE);
write(-10 === Number.MIN_VALUE);
write(-10 === Number.NaN);
write(-10 === Number.POSITIVE_INFINITY);
write(-10 === Number.NEGATIVE_INFINITY);
write(-10 === new Number(NaN));
write(-10 === new Number(+0));
write(-10 === new Number(-0));
write(-10 === new Number(0));
write(-10 === new Number(0.0));
write(-10 === new Number(-0.0));
write(-10 === new Number(+0.0));
write(-10 === new Number(1));
write(-10 === new Number(10));
write(-10 === new Number(10.0));
write(-10 === new Number(10.1));
write(-10 === new Number(-1));
write(-10 === new Number(-10));
write(-10 === new Number(-10.0));
write(-10 === new Number(-10.1));
write(-10 === new Number(Number.MAX_VALUE));
write(-10 === new Number(Number.MIN_VALUE));
write(-10 === new Number(Number.NaN));
write(-10 === new Number(Number.POSITIVE_INFINITY));
write(-10 === new Number(Number.NEGATIVE_INFINITY));
write(-10 === '');
write(-10 === 0xa);
write(-10 === 04);
write(-10 === 'hello');
write(-10 === 'hel' + 'lo');
write(-10 === String(''));
write(-10 === String('hello'));
write(-10 === String('h' + 'ello'));
write(-10 === new String(''));
write(-10 === new String('hello'));
write(-10 === new String('he' + 'llo'));
write(-10 === new Object());
write(-10 === new Object());
write(-10 === [1, 2, 3]);
write(-10 === [1 ,2 , 3]);
write(-10 === new Array(3));
write(-10 === Array(3));
write(-10 === new Array(1 ,2 ,3));
write(-10 === Array(1));
write(-10 === foo);
write(-10.0 === undefined);
write(-10.0 === null);
write(-10.0 === true);
write(-10.0 === false);
write(-10.0 === Boolean(true));
write(-10.0 === Boolean(false));
write(-10.0 === new Boolean(true));
write(-10.0 === new Boolean(false));
write(-10.0 === NaN);
write(-10.0 === +0);
write(-10.0 === -0);
write(-10.0 === 0);
write(-10.0 === 0.0);
write(-10.0 === -0.0);
write(-10.0 === +0.0);
write(-10.0 === 1);
write(-10.0 === 10);
write(-10.0 === 10.0);
write(-10.0 === 10.1);
write(-10.0 === -1);
write(-10.0 === -10);
write(-10.0 === -10.0);
write(-10.0 === -10.1);
write(-10.0 === Number.MAX_VALUE);
write(-10.0 === Number.MIN_VALUE);
write(-10.0 === Number.NaN);
write(-10.0 === Number.POSITIVE_INFINITY);
write(-10.0 === Number.NEGATIVE_INFINITY);
write(-10.0 === new Number(NaN));
write(-10.0 === new Number(+0));
write(-10.0 === new Number(-0));
write(-10.0 === new Number(0));
write(-10.0 === new Number(0.0));
write(-10.0 === new Number(-0.0));
write(-10.0 === new Number(+0.0));
write(-10.0 === new Number(1));
write(-10.0 === new Number(10));
write(-10.0 === new Number(10.0));
write(-10.0 === new Number(10.1));
write(-10.0 === new Number(-1));
write(-10.0 === new Number(-10));
write(-10.0 === new Number(-10.0));
write(-10.0 === new Number(-10.1));
write(-10.0 === new Number(Number.MAX_VALUE));
write(-10.0 === new Number(Number.MIN_VALUE));
write(-10.0 === new Number(Number.NaN));
write(-10.0 === new Number(Number.POSITIVE_INFINITY));
write(-10.0 === new Number(Number.NEGATIVE_INFINITY));
write(-10.0 === '');
write(-10.0 === 0xa);
write(-10.0 === 04);
write(-10.0 === 'hello');
write(-10.0 === 'hel' + 'lo');
write(-10.0 === String(''));
write(-10.0 === String('hello'));
write(-10.0 === String('h' + 'ello'));
write(-10.0 === new String(''));
write(-10.0 === new String('hello'));
write(-10.0 === new String('he' + 'llo'));
write(-10.0 === new Object());
write(-10.0 === new Object());
write(-10.0 === [1, 2, 3]);
write(-10.0 === [1 ,2 , 3]);
write(-10.0 === new Array(3));
write(-10.0 === Array(3));
write(-10.0 === new Array(1 ,2 ,3));
write(-10.0 === Array(1));
write(-10.0 === foo);
write(-10.1 === undefined);
write(-10.1 === null);
write(-10.1 === true);
write(-10.1 === false);
write(-10.1 === Boolean(true));
write(-10.1 === Boolean(false));
write(-10.1 === new Boolean(true));
write(-10.1 === new Boolean(false));
write(-10.1 === NaN);
write(-10.1 === +0);
write(-10.1 === -0);
write(-10.1 === 0);
write(-10.1 === 0.0);
write(-10.1 === -0.0);
write(-10.1 === +0.0);
write(-10.1 === 1);
write(-10.1 === 10);
write(-10.1 === 10.0);
write(-10.1 === 10.1);
write(-10.1 === -1);
write(-10.1 === -10);
write(-10.1 === -10.0);
write(-10.1 === -10.1);
write(-10.1 === Number.MAX_VALUE);
write(-10.1 === Number.MIN_VALUE);
write(-10.1 === Number.NaN);
write(-10.1 === Number.POSITIVE_INFINITY);
write(-10.1 === Number.NEGATIVE_INFINITY);
write(-10.1 === new Number(NaN));
write(-10.1 === new Number(+0));
write(-10.1 === new Number(-0));
write(-10.1 === new Number(0));
write(-10.1 === new Number(0.0));
write(-10.1 === new Number(-0.0));
write(-10.1 === new Number(+0.0));
write(-10.1 === new Number(1));
write(-10.1 === new Number(10));
write(-10.1 === new Number(10.0));
write(-10.1 === new Number(10.1));
write(-10.1 === new Number(-1));
write(-10.1 === new Number(-10));
write(-10.1 === new Number(-10.0));
write(-10.1 === new Number(-10.1));
write(-10.1 === new Number(Number.MAX_VALUE));
write(-10.1 === new Number(Number.MIN_VALUE));
write(-10.1 === new Number(Number.NaN));
write(-10.1 === new Number(Number.POSITIVE_INFINITY));
write(-10.1 === new Number(Number.NEGATIVE_INFINITY));
write(-10.1 === '');
write(-10.1 === 0xa);
write(-10.1 === 04);
write(-10.1 === 'hello');
write(-10.1 === 'hel' + 'lo');
write(-10.1 === String(''));
write(-10.1 === String('hello'));
write(-10.1 === String('h' + 'ello'));
write(-10.1 === new String(''));
write(-10.1 === new String('hello'));
write(-10.1 === new String('he' + 'llo'));
write(-10.1 === new Object());
write(-10.1 === new Object());
write(-10.1 === [1, 2, 3]);
write(-10.1 === [1 ,2 , 3]);
write(-10.1 === new Array(3));
write(-10.1 === Array(3));
write(-10.1 === new Array(1 ,2 ,3));
write(-10.1 === Array(1));
write(-10.1 === foo);
write(Number.MAX_VALUE === undefined);
write(Number.MAX_VALUE === null);
write(Number.MAX_VALUE === true);
write(Number.MAX_VALUE === false);
write(Number.MAX_VALUE === Boolean(true));
write(Number.MAX_VALUE === Boolean(false));
write(Number.MAX_VALUE === new Boolean(true));
write(Number.MAX_VALUE === new Boolean(false));
write(Number.MAX_VALUE === NaN);
write(Number.MAX_VALUE === +0);
write(Number.MAX_VALUE === -0);
write(Number.MAX_VALUE === 0);
write(Number.MAX_VALUE === 0.0);
write(Number.MAX_VALUE === -0.0);
write(Number.MAX_VALUE === +0.0);
write(Number.MAX_VALUE === 1);
write(Number.MAX_VALUE === 10);
write(Number.MAX_VALUE === 10.0);
write(Number.MAX_VALUE === 10.1);
write(Number.MAX_VALUE === -1);
write(Number.MAX_VALUE === -10);
write(Number.MAX_VALUE === -10.0);
write(Number.MAX_VALUE === -10.1);
write(Number.MAX_VALUE === Number.MAX_VALUE);
write(Number.MAX_VALUE === Number.MIN_VALUE);
write(Number.MAX_VALUE === Number.NaN);
write(Number.MAX_VALUE === Number.POSITIVE_INFINITY);
write(Number.MAX_VALUE === Number.NEGATIVE_INFINITY);
write(Number.MAX_VALUE === new Number(NaN));
write(Number.MAX_VALUE === new Number(+0));
write(Number.MAX_VALUE === new Number(-0));
write(Number.MAX_VALUE === new Number(0));
write(Number.MAX_VALUE === new Number(0.0));
write(Number.MAX_VALUE === new Number(-0.0));
write(Number.MAX_VALUE === new Number(+0.0));
write(Number.MAX_VALUE === new Number(1));
write(Number.MAX_VALUE === new Number(10));
write(Number.MAX_VALUE === new Number(10.0));
write(Number.MAX_VALUE === new Number(10.1));
write(Number.MAX_VALUE === new Number(-1));
write(Number.MAX_VALUE === new Number(-10));
write(Number.MAX_VALUE === new Number(-10.0));
write(Number.MAX_VALUE === new Number(-10.1));
write(Number.MAX_VALUE === new Number(Number.MAX_VALUE));
write(Number.MAX_VALUE === new Number(Number.MIN_VALUE));
write(Number.MAX_VALUE === new Number(Number.NaN));
write(Number.MAX_VALUE === new Number(Number.POSITIVE_INFINITY));
write(Number.MAX_VALUE === new Number(Number.NEGATIVE_INFINITY));
write(Number.MAX_VALUE === '');
write(Number.MAX_VALUE === 0xa);
write(Number.MAX_VALUE === 04);
write(Number.MAX_VALUE === 'hello');
write(Number.MAX_VALUE === 'hel' + 'lo');
write(Number.MAX_VALUE === String(''));
write(Number.MAX_VALUE === String('hello'));
write(Number.MAX_VALUE === String('h' + 'ello'));
write(Number.MAX_VALUE === new String(''));
write(Number.MAX_VALUE === new String('hello'));
write(Number.MAX_VALUE === new String('he' + 'llo'));
write(Number.MAX_VALUE === new Object());
write(Number.MAX_VALUE === new Object());
write(Number.MAX_VALUE === [1, 2, 3]);
write(Number.MAX_VALUE === [1 ,2 , 3]);
write(Number.MAX_VALUE === new Array(3));
write(Number.MAX_VALUE === Array(3));
write(Number.MAX_VALUE === new Array(1 ,2 ,3));
write(Number.MAX_VALUE === Array(1));
write(Number.MAX_VALUE === foo);
write(Number.MIN_VALUE === undefined);
write(Number.MIN_VALUE === null);
write(Number.MIN_VALUE === true);
write(Number.MIN_VALUE === false);
write(Number.MIN_VALUE === Boolean(true));
write(Number.MIN_VALUE === Boolean(false));
write(Number.MIN_VALUE === new Boolean(true));
write(Number.MIN_VALUE === new Boolean(false));
write(Number.MIN_VALUE === NaN);
write(Number.MIN_VALUE === +0);
write(Number.MIN_VALUE === -0);
write(Number.MIN_VALUE === 0);
write(Number.MIN_VALUE === 0.0);
write(Number.MIN_VALUE === -0.0);
write(Number.MIN_VALUE === +0.0);
write(Number.MIN_VALUE === 1);
write(Number.MIN_VALUE === 10);
write(Number.MIN_VALUE === 10.0);
write(Number.MIN_VALUE === 10.1);
write(Number.MIN_VALUE === -1);
write(Number.MIN_VALUE === -10);
write(Number.MIN_VALUE === -10.0);
write(Number.MIN_VALUE === -10.1);
write(Number.MIN_VALUE === Number.MAX_VALUE);
write(Number.MIN_VALUE === Number.MIN_VALUE);
write(Number.MIN_VALUE === Number.NaN);
write(Number.MIN_VALUE === Number.POSITIVE_INFINITY);
write(Number.MIN_VALUE === Number.NEGATIVE_INFINITY);
write(Number.MIN_VALUE === new Number(NaN));
write(Number.MIN_VALUE === new Number(+0));
write(Number.MIN_VALUE === new Number(-0));
write(Number.MIN_VALUE === new Number(0));
write(Number.MIN_VALUE === new Number(0.0));
write(Number.MIN_VALUE === new Number(-0.0));
write(Number.MIN_VALUE === new Number(+0.0));
write(Number.MIN_VALUE === new Number(1));
write(Number.MIN_VALUE === new Number(10));
write(Number.MIN_VALUE === new Number(10.0));
write(Number.MIN_VALUE === new Number(10.1));
write(Number.MIN_VALUE === new Number(-1));
write(Number.MIN_VALUE === new Number(-10));
write(Number.MIN_VALUE === new Number(-10.0));
write(Number.MIN_VALUE === new Number(-10.1));
write(Number.MIN_VALUE === new Number(Number.MAX_VALUE));
write(Number.MIN_VALUE === new Number(Number.MIN_VALUE));
write(Number.MIN_VALUE === new Number(Number.NaN));
write(Number.MIN_VALUE === new Number(Number.POSITIVE_INFINITY));
write(Number.MIN_VALUE === new Number(Number.NEGATIVE_INFINITY));
write(Number.MIN_VALUE === '');
write(Number.MIN_VALUE === 0xa);
write(Number.MIN_VALUE === 04);
write(Number.MIN_VALUE === 'hello');
write(Number.MIN_VALUE === 'hel' + 'lo');
write(Number.MIN_VALUE === String(''));
write(Number.MIN_VALUE === String('hello'));
write(Number.MIN_VALUE === String('h' + 'ello'));
write(Number.MIN_VALUE === new String(''));
write(Number.MIN_VALUE === new String('hello'));
write(Number.MIN_VALUE === new String('he' + 'llo'));
write(Number.MIN_VALUE === new Object());
write(Number.MIN_VALUE === new Object());
write(Number.MIN_VALUE === [1, 2, 3]);
write(Number.MIN_VALUE === [1 ,2 , 3]);
write(Number.MIN_VALUE === new Array(3));
write(Number.MIN_VALUE === Array(3));
write(Number.MIN_VALUE === new Array(1 ,2 ,3));
write(Number.MIN_VALUE === Array(1));
write(Number.MIN_VALUE === foo);
write(Number.NaN === undefined);
write(Number.NaN === null);
write(Number.NaN === true);
write(Number.NaN === false);
write(Number.NaN === Boolean(true));
write(Number.NaN === Boolean(false));
write(Number.NaN === new Boolean(true));
write(Number.NaN === new Boolean(false));
write(Number.NaN === NaN);
write(Number.NaN === +0);
write(Number.NaN === -0);
write(Number.NaN === 0);
write(Number.NaN === 0.0);
write(Number.NaN === -0.0);
write(Number.NaN === +0.0);
write(Number.NaN === 1);
write(Number.NaN === 10);
write(Number.NaN === 10.0);
write(Number.NaN === 10.1);
write(Number.NaN === -1);
write(Number.NaN === -10);
write(Number.NaN === -10.0);
write(Number.NaN === -10.1);
write(Number.NaN === Number.MAX_VALUE);
write(Number.NaN === Number.MIN_VALUE);
write(Number.NaN === Number.NaN);
write(Number.NaN === Number.POSITIVE_INFINITY);
write(Number.NaN === Number.NEGATIVE_INFINITY);
write(Number.NaN === new Number(NaN));
write(Number.NaN === new Number(+0));
write(Number.NaN === new Number(-0));
write(Number.NaN === new Number(0));
write(Number.NaN === new Number(0.0));
write(Number.NaN === new Number(-0.0));
write(Number.NaN === new Number(+0.0));
write(Number.NaN === new Number(1));
write(Number.NaN === new Number(10));
write(Number.NaN === new Number(10.0));
write(Number.NaN === new Number(10.1));
write(Number.NaN === new Number(-1));
write(Number.NaN === new Number(-10));
write(Number.NaN === new Number(-10.0));
write(Number.NaN === new Number(-10.1));
write(Number.NaN === new Number(Number.MAX_VALUE));
write(Number.NaN === new Number(Number.MIN_VALUE));
write(Number.NaN === new Number(Number.NaN));
write(Number.NaN === new Number(Number.POSITIVE_INFINITY));
write(Number.NaN === new Number(Number.NEGATIVE_INFINITY));
write(Number.NaN === '');
write(Number.NaN === 0xa);
write(Number.NaN === 04);
write(Number.NaN === 'hello');
write(Number.NaN === 'hel' + 'lo');
write(Number.NaN === String(''));
write(Number.NaN === String('hello'));
write(Number.NaN === String('h' + 'ello'));
write(Number.NaN === new String(''));
write(Number.NaN === new String('hello'));
write(Number.NaN === new String('he' + 'llo'));
write(Number.NaN === new Object());
write(Number.NaN === new Object());
write(Number.NaN === [1, 2, 3]);
write(Number.NaN === [1 ,2 , 3]);
write(Number.NaN === new Array(3));
write(Number.NaN === Array(3));
write(Number.NaN === new Array(1 ,2 ,3));
write(Number.NaN === Array(1));
write(Number.NaN === foo);
write(Number.POSITIVE_INFINITY === undefined);
write(Number.POSITIVE_INFINITY === null);
write(Number.POSITIVE_INFINITY === true);
write(Number.POSITIVE_INFINITY === false);
write(Number.POSITIVE_INFINITY === Boolean(true));
write(Number.POSITIVE_INFINITY === Boolean(false));
write(Number.POSITIVE_INFINITY === new Boolean(true));
write(Number.POSITIVE_INFINITY === new Boolean(false));
write(Number.POSITIVE_INFINITY === NaN);
write(Number.POSITIVE_INFINITY === +0);
write(Number.POSITIVE_INFINITY === -0);
write(Number.POSITIVE_INFINITY === 0);
write(Number.POSITIVE_INFINITY === 0.0);
write(Number.POSITIVE_INFINITY === -0.0);
write(Number.POSITIVE_INFINITY === +0.0);
write(Number.POSITIVE_INFINITY === 1);
write(Number.POSITIVE_INFINITY === 10);
write(Number.POSITIVE_INFINITY === 10.0);
write(Number.POSITIVE_INFINITY === 10.1);
write(Number.POSITIVE_INFINITY === -1);
write(Number.POSITIVE_INFINITY === -10);
write(Number.POSITIVE_INFINITY === -10.0);
write(Number.POSITIVE_INFINITY === -10.1);
write(Number.POSITIVE_INFINITY === Number.MAX_VALUE);
write(Number.POSITIVE_INFINITY === Number.MIN_VALUE);
write(Number.POSITIVE_INFINITY === Number.NaN);
write(Number.POSITIVE_INFINITY === Number.POSITIVE_INFINITY);
write(Number.POSITIVE_INFINITY === Number.NEGATIVE_INFINITY);
write(Number.POSITIVE_INFINITY === new Number(NaN));
write(Number.POSITIVE_INFINITY === new Number(+0));
write(Number.POSITIVE_INFINITY === new Number(-0));
write(Number.POSITIVE_INFINITY === new Number(0));
write(Number.POSITIVE_INFINITY === new Number(0.0));
write(Number.POSITIVE_INFINITY === new Number(-0.0));
write(Number.POSITIVE_INFINITY === new Number(+0.0));
write(Number.POSITIVE_INFINITY === new Number(1));
write(Number.POSITIVE_INFINITY === new Number(10));
write(Number.POSITIVE_INFINITY === new Number(10.0));
write(Number.POSITIVE_INFINITY === new Number(10.1));
write(Number.POSITIVE_INFINITY === new Number(-1));
write(Number.POSITIVE_INFINITY === new Number(-10));
write(Number.POSITIVE_INFINITY === new Number(-10.0));
write(Number.POSITIVE_INFINITY === new Number(-10.1));
write(Number.POSITIVE_INFINITY === new Number(Number.MAX_VALUE));
write(Number.POSITIVE_INFINITY === new Number(Number.MIN_VALUE));
write(Number.POSITIVE_INFINITY === new Number(Number.NaN));
write(Number.POSITIVE_INFINITY === new Number(Number.POSITIVE_INFINITY));
write(Number.POSITIVE_INFINITY === new Number(Number.NEGATIVE_INFINITY));
write(Number.POSITIVE_INFINITY === '');
write(Number.POSITIVE_INFINITY === 0xa);
write(Number.POSITIVE_INFINITY === 04);
write(Number.POSITIVE_INFINITY === 'hello');
write(Number.POSITIVE_INFINITY === 'hel' + 'lo');
write(Number.POSITIVE_INFINITY === String(''));
write(Number.POSITIVE_INFINITY === String('hello'));
write(Number.POSITIVE_INFINITY === String('h' + 'ello'));
write(Number.POSITIVE_INFINITY === new String(''));
write(Number.POSITIVE_INFINITY === new String('hello'));
write(Number.POSITIVE_INFINITY === new String('he' + 'llo'));
write(Number.POSITIVE_INFINITY === new Object());
write(Number.POSITIVE_INFINITY === new Object());
write(Number.POSITIVE_INFINITY === [1, 2, 3]);
write(Number.POSITIVE_INFINITY === [1 ,2 , 3]);
write(Number.POSITIVE_INFINITY === new Array(3));
write(Number.POSITIVE_INFINITY === Array(3));
write(Number.POSITIVE_INFINITY === new Array(1 ,2 ,3));
write(Number.POSITIVE_INFINITY === Array(1));
write(Number.POSITIVE_INFINITY === foo);
write(Number.NEGATIVE_INFINITY === undefined);
write(Number.NEGATIVE_INFINITY === null);
write(Number.NEGATIVE_INFINITY === true);
write(Number.NEGATIVE_INFINITY === false);
write(Number.NEGATIVE_INFINITY === Boolean(true));
write(Number.NEGATIVE_INFINITY === Boolean(false));
write(Number.NEGATIVE_INFINITY === new Boolean(true));
write(Number.NEGATIVE_INFINITY === new Boolean(false));
write(Number.NEGATIVE_INFINITY === NaN);
write(Number.NEGATIVE_INFINITY === +0);
write(Number.NEGATIVE_INFINITY === -0);
write(Number.NEGATIVE_INFINITY === 0);
write(Number.NEGATIVE_INFINITY === 0.0);
write(Number.NEGATIVE_INFINITY === -0.0);
write(Number.NEGATIVE_INFINITY === +0.0);
write(Number.NEGATIVE_INFINITY === 1);
write(Number.NEGATIVE_INFINITY === 10);
write(Number.NEGATIVE_INFINITY === 10.0);
write(Number.NEGATIVE_INFINITY === 10.1);
write(Number.NEGATIVE_INFINITY === -1);
write(Number.NEGATIVE_INFINITY === -10);
write(Number.NEGATIVE_INFINITY === -10.0);
write(Number.NEGATIVE_INFINITY === -10.1);
write(Number.NEGATIVE_INFINITY === Number.MAX_VALUE);
write(Number.NEGATIVE_INFINITY === Number.MIN_VALUE);
write(Number.NEGATIVE_INFINITY === Number.NaN);
write(Number.NEGATIVE_INFINITY === Number.POSITIVE_INFINITY);
write(Number.NEGATIVE_INFINITY === Number.NEGATIVE_INFINITY);
write(Number.NEGATIVE_INFINITY === new Number(NaN));
write(Number.NEGATIVE_INFINITY === new Number(+0));
write(Number.NEGATIVE_INFINITY === new Number(-0));
write(Number.NEGATIVE_INFINITY === new Number(0));
write(Number.NEGATIVE_INFINITY === new Number(0.0));
write(Number.NEGATIVE_INFINITY === new Number(-0.0));
write(Number.NEGATIVE_INFINITY === new Number(+0.0));
write(Number.NEGATIVE_INFINITY === new Number(1));
write(Number.NEGATIVE_INFINITY === new Number(10));
write(Number.NEGATIVE_INFINITY === new Number(10.0));
write(Number.NEGATIVE_INFINITY === new Number(10.1));
write(Number.NEGATIVE_INFINITY === new Number(-1));
write(Number.NEGATIVE_INFINITY === new Number(-10));
write(Number.NEGATIVE_INFINITY === new Number(-10.0));
write(Number.NEGATIVE_INFINITY === new Number(-10.1));
write(Number.NEGATIVE_INFINITY === new Number(Number.MAX_VALUE));
write(Number.NEGATIVE_INFINITY === new Number(Number.MIN_VALUE));
write(Number.NEGATIVE_INFINITY === new Number(Number.NaN));
write(Number.NEGATIVE_INFINITY === new Number(Number.POSITIVE_INFINITY));
write(Number.NEGATIVE_INFINITY === new Number(Number.NEGATIVE_INFINITY));
write(Number.NEGATIVE_INFINITY === '');
write(Number.NEGATIVE_INFINITY === 0xa);
write(Number.NEGATIVE_INFINITY === 04);
write(Number.NEGATIVE_INFINITY === 'hello');
write(Number.NEGATIVE_INFINITY === 'hel' + 'lo');
write(Number.NEGATIVE_INFINITY === String(''));
write(Number.NEGATIVE_INFINITY === String('hello'));
write(Number.NEGATIVE_INFINITY === String('h' + 'ello'));
write(Number.NEGATIVE_INFINITY === new String(''));
write(Number.NEGATIVE_INFINITY === new String('hello'));
write(Number.NEGATIVE_INFINITY === new String('he' + 'llo'));
write(Number.NEGATIVE_INFINITY === new Object());
write(Number.NEGATIVE_INFINITY === new Object());
write(Number.NEGATIVE_INFINITY === [1, 2, 3]);
write(Number.NEGATIVE_INFINITY === [1 ,2 , 3]);
write(Number.NEGATIVE_INFINITY === new Array(3));
write(Number.NEGATIVE_INFINITY === Array(3));
write(Number.NEGATIVE_INFINITY === new Array(1 ,2 ,3));
write(Number.NEGATIVE_INFINITY === Array(1));
write(Number.NEGATIVE_INFINITY === foo);
write(new Number(NaN) === undefined);
write(new Number(NaN) === null);
write(new Number(NaN) === true);
write(new Number(NaN) === false);
write(new Number(NaN) === Boolean(true));
write(new Number(NaN) === Boolean(false));
write(new Number(NaN) === new Boolean(true));
write(new Number(NaN) === new Boolean(false));
write(new Number(NaN) === NaN);
write(new Number(NaN) === +0);
write(new Number(NaN) === -0);
write(new Number(NaN) === 0);
write(new Number(NaN) === 0.0);
write(new Number(NaN) === -0.0);
write(new Number(NaN) === +0.0);
write(new Number(NaN) === 1);
write(new Number(NaN) === 10);
write(new Number(NaN) === 10.0);
write(new Number(NaN) === 10.1);
write(new Number(NaN) === -1);
write(new Number(NaN) === -10);
write(new Number(NaN) === -10.0);
write(new Number(NaN) === -10.1);
write(new Number(NaN) === Number.MAX_VALUE);
write(new Number(NaN) === Number.MIN_VALUE);
write(new Number(NaN) === Number.NaN);
write(new Number(NaN) === Number.POSITIVE_INFINITY);
write(new Number(NaN) === Number.NEGATIVE_INFINITY);
write(new Number(NaN) === new Number(NaN));
write(new Number(NaN) === new Number(+0));
write(new Number(NaN) === new Number(-0));
write(new Number(NaN) === new Number(0));
write(new Number(NaN) === new Number(0.0));
write(new Number(NaN) === new Number(-0.0));
write(new Number(NaN) === new Number(+0.0));
write(new Number(NaN) === new Number(1));
write(new Number(NaN) === new Number(10));
write(new Number(NaN) === new Number(10.0));
write(new Number(NaN) === new Number(10.1));
write(new Number(NaN) === new Number(-1));
write(new Number(NaN) === new Number(-10));
write(new Number(NaN) === new Number(-10.0));
write(new Number(NaN) === new Number(-10.1));
write(new Number(NaN) === new Number(Number.MAX_VALUE));
write(new Number(NaN) === new Number(Number.MIN_VALUE));
write(new Number(NaN) === new Number(Number.NaN));
write(new Number(NaN) === new Number(Number.POSITIVE_INFINITY));
write(new Number(NaN) === new Number(Number.NEGATIVE_INFINITY));
write(new Number(NaN) === '');
write(new Number(NaN) === 0xa);
write(new Number(NaN) === 04);
write(new Number(NaN) === 'hello');
write(new Number(NaN) === 'hel' + 'lo');
write(new Number(NaN) === String(''));
write(new Number(NaN) === String('hello'));
write(new Number(NaN) === String('h' + 'ello'));
write(new Number(NaN) === new String(''));
write(new Number(NaN) === new String('hello'));
write(new Number(NaN) === new String('he' + 'llo'));
write(new Number(NaN) === new Object());
write(new Number(NaN) === new Object());
write(new Number(NaN) === [1, 2, 3]);
write(new Number(NaN) === [1 ,2 , 3]);
write(new Number(NaN) === new Array(3));
write(new Number(NaN) === Array(3));
write(new Number(NaN) === new Array(1 ,2 ,3));
write(new Number(NaN) === Array(1));
write(new Number(NaN) === foo);
write(new Number(+0) === undefined);
write(new Number(+0) === null);
write(new Number(+0) === true);
write(new Number(+0) === false);
write(new Number(+0) === Boolean(true));
write(new Number(+0) === Boolean(false));
write(new Number(+0) === new Boolean(true));
write(new Number(+0) === new Boolean(false));
write(new Number(+0) === NaN);
write(new Number(+0) === +0);
write(new Number(+0) === -0);
write(new Number(+0) === 0);
write(new Number(+0) === 0.0);
write(new Number(+0) === -0.0);
write(new Number(+0) === +0.0);
write(new Number(+0) === 1);
write(new Number(+0) === 10);
write(new Number(+0) === 10.0);
write(new Number(+0) === 10.1);
write(new Number(+0) === -1);
write(new Number(+0) === -10);
write(new Number(+0) === -10.0);
write(new Number(+0) === -10.1);
write(new Number(+0) === Number.MAX_VALUE);
write(new Number(+0) === Number.MIN_VALUE);
write(new Number(+0) === Number.NaN);
write(new Number(+0) === Number.POSITIVE_INFINITY);
write(new Number(+0) === Number.NEGATIVE_INFINITY);
write(new Number(+0) === new Number(NaN));
